A virtual machine (VM) template may be used to relatively rapidly initiate VMs that have the same characteristics as the VM template. The use of a VM template may be particularly advantageous in a highly dynamic computing environment, such as a cloud computing environment. A VM initiated from a VM template can be a thin-provisioned VM or a cloned VM. A cloned VM contains a complete copy of the volumes of the VM template. Generating the copies of the volumes takes an amount of time proportional to the size of the volumes. A thin-provisioned VM does not copy the volumes of the VM template, but rather uses the volumes of the VM template for read operations, and generates additional volume space only as needed in a separate copy-on-write (COW) image for write operations.